package main

import "fmt"

func main() {
	/*
		基本数据类型之间的转换
			-golang 只有显式转换，即强制类型转换
			-语法：
				表达式T(v)将值v转换为类型T
				T就是数据类型
				V就是需要转换的变量

		-int 64 转 int16 会出现精度的缺失，正常现象（高精度向低精度转换，都会缺失）

		-不同类型的数据进行运算的时候，需要先转成相同的数据类型才可以进行运算

	*/

	var num1 int = 100
	var num2 = float32(num1)
	fmt.Printf("类型：%T", num2)
	fmt.Println("----------------")
	var num3 float64 = 12.33443
	var num4 = int(num3)
	fmt.Println(num4)
	fmt.Printf("类型：%T", num4)
	fmt.Println("")

	var n5 int32 = 12
	// var n6 int64 = int64(n5) + 30
	var n6 = n5 + 30
	fmt.Println("n5:", n5)
	fmt.Println("n6:", n6)
	fmt.Printf("%T", n6)

}
